Process management is imperative for any enterprise producing services and/or goods. So naturally, processes are created, documented, controlled and executed is every business, every day. Unless an enterprise has invested heavily in a software group to create a custom solution, most businesses manage processes using off-the-shelf, disparate solutions. Some processes are paper-based, some are documented on a word-processor or in a spreadsheet and those processes are executed either manually as a checked-list, some semi-automatically and others on a dedicated station with a dedicated software suite. The creation, revision, maintenance and execution of all those processes require specific skills on a plurality of software tools.
The first attempt at automating business processes began with hardwiring in software the formal process often by programmers not familiar with the working environment of those processes. The end-user simply executed the process, as is, on a local computer. This resulted in a rigid and slow iterative method to implement and improve the automated processes and users not skilled in the art of programming had to rely on a team of programmers to improve or modify the automation. Because of its complexity, this was applied mainly to repetitive actions in manufacturing stations or in administrative processes. The user interface was often on a terminal presented as a form with empty fields to be filled.
The second step came with the improvement of the computer graphic interface. It was then possible to divide a process into smaller reusable blocs represented by an icon. Those icons were still in fact small fixed pieces of executable code not easily upgradable by the user. Color information was added for pass/fail or critical decision step to guide the user. A sequencer was added along with the ability to drive external devices behind the icon to lead to current test station designs. Mechanisms were included to share information within processes by the use of local and global variables as described. Later, process management was introduced as graphical work elements linked together including data repository and actor selection for performing the work element.
However, the user, although better served by a convivial interface, is still disconnected from the implementation as the icons hide significant amount of specialized programming even if the programming is via graphic icons like, for example, in Labview™ or in similar systems.
Accordingly, there is a need for a system and method giving users the ability of creating, editing, executing and maintaining management processes without the need of programmers, compilers or other specialized tools.